"""
编写一个函数 fibonacci_even_generator，该函数接受一个位置参数 n 和一个关键字参数 total（默认值为5）。
函数应使用生成器推导式返回前 total 个斐波那契数列中的偶数，但不超过 n 个数字。

    例如：	result = list(fibonacci_even_generator(10, total=3))
            print(result) # 输出：[0, 2, 8]
"""


def fibonacci_sequence(n):
    fib_seq = [0, 1]
    while len(fib_seq) < n:
        fib_seq.append(
            fib_seq[-1] + fib_seq[-2]
        )
    return fib_seq


def fibonacci_even_generator(n, total=5):
    return [x for x in fibonacci_sequence(n) if x % 2 == 0][:total]


if __name__ == '__main__':
    result = list(
        fibonacci_even_generator(50, total=10)
    )
    print(result)

